package com.xinzhidi.web.dataanalysis.mapper;

import com.xinzhidi.web.dataanalysis.domain.po.DataAnalysisPo;
import com.xinzhidi.web.dataanalysis.domain.vo.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author cx
 */
public interface DataAnalysisMapper {

//    List<OverviewDataVo> dataOverview(DataAnalysisPo po);

    List<HeatAnalysisVo> heatPlotAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> heatBuildAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> heatUnitAnalysis(DataAnalysisPo po);

    List<VelocityFlowAnalysisVo> velocityFlowAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> heatHouseholdAnalysis(DataAnalysisPo po);

    List<VelocityFlowAnalysisVo> velocityFlowPlotAnalysis(DataAnalysisPo po);

    List<VelocityFlowAnalysisVo> velocityFlowBulidAnalysis(DataAnalysisPo po);

    List<VelocityFlowAnalysisVo> velocityFlowUnitAnalysis(DataAnalysisPo po);

    List<VelocityFlowAnalysisVo> velocityFlowHouseAnalysis(DataAnalysisPo po);

    List<TemperatureAnalysisVo> temperaturePlotAnalysis(DataAnalysisPo po);

    List<TemperatureAnalysisVo> temperatureBuildAnalysis(DataAnalysisPo po);

    List<TemperatureAnalysisVo> temperatureUnitAnalysis(DataAnalysisPo po);

    List<TemperatureAnalysisVo> temperatureHouseholdAnalysis(DataAnalysisPo po);

    List<FaultAnalysisVo> faultAnalysis(DataAnalysisPo po);

    List<FaultAnalysisVo> faultPlotAnalysis(DataAnalysisPo po);

    List<FaultAnalysisVo> faultBuildAnalysis(DataAnalysisPo po);

    List<FaultAnalysisVo> faultUnitAnalysis(DataAnalysisPo po);

    List<FaultAnalysisVo> faultHouseholdAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> waterSupplyTemperaturePlotAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> waterSupplyTemperatureBuildAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> waterSupplyTemperatureUnitAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> waterSupplyTemperatureHouseholdAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> returnWaterTemperaturePlotAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> returnWaterTemperatureBuildAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> returnWaterTemperatureUnitAnalysis(DataAnalysisPo po);

    List<HeatAnalysisVo> returnWaterTemperatureHouseholdAnalysis(DataAnalysisPo po);

    List<OverviewVo> dataOverviewPlotTemperature(DataAnalysisPo po);

    List<OverviewVo> waterSupplyTemperaturePlotAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> dataOverviewBuildTemperature(DataAnalysisPo po);

    List<OverviewVo> dataOverviewUnitTemperature(DataAnalysisPo po);

    List<OverviewVo> dataOverviewHouseholdTemperature(DataAnalysisPo po);

    List<OverviewVo> waterSupplyTemperatureBuildAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> waterSupplyTemperatureUnitAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> waterSupplyTemperatureHouseholdAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> returnWaterTemperaturePlotAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> returnWaterTemperatureBuildAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> returnWaterTemperatureUnitAvgAnalysis(DataAnalysisPo po);

    List<OverviewVo> returnWaterTemperatureHouseholdAvgAnalysis(DataAnalysisPo po);

    OverviewVo getIntervalPlotHeat(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getIntervalBuildHeat(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getIntervalUnitHeat(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getIntervalhouseholdHeat(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getVelocityFlowPlotAnalysis(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getVelocityFlowBuildAnalysis(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getVelocityFlowUnitAnalysis(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    OverviewVo getVelocityFlowHouseholdAnalysis(@Param("po") DataAnalysisPo po , @Param("id") Long id);

    List<OverviewVo> dataOverviewPlotOutdoorTemperature(DataAnalysisPo po);

    List<OverviewVo> dataOverviewBuildOutdoorTemperature(DataAnalysisPo po);

    List<OverviewVo> dataOverviewUnitOutdoorTemperature(DataAnalysisPo po);

    List<OverviewVo> dataOverviewHouseholdOutdoorTemperature(DataAnalysisPo po);

    List<TemperatureAnalysisTimeVo> dataPlotOutdoorTemperature(DataAnalysisPo po);

    List<TemperatureAnalysisTimeVo> dataBuildOutdoorTemperature(DataAnalysisPo po);

    List<TemperatureAnalysisTimeVo> dataUnitOutdoorTemperature(DataAnalysisPo po);

    List<TemperatureAnalysisTimeVo> dataHouseholdOutdoorTemperature(DataAnalysisPo po);

    OverviewVo getTotalUnitHeat(Long id);

    OverviewVo getTotalPlotHeat(Long id);

    OverviewVo getVelocityBuildUnitAnalysis(Long id);

    OverviewVo getTotalBuildHeat(Long id);

    OverviewVo getVelocityBuildAnalysis(Long id);

    OverviewVo getVelocityPlotAnalysis(Long id);

    OverviewVo getTotalHouseholdHeat(Long id);

    OverviewVo getVelocityhouseholdAnalysis(Long id);
}
